{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Fealpy 开发标准"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 通用标准\n",
    "\n",
    "N: 网格节点的个数\n",
    "NE: 边的个数\n",
    "NF: 面的个数\n",
    "NC: 单元个数\n",
    "\n",
    "网格上存储基函数值或梯度值的多维数组轴的排序约定:\n",
    "\n",
    "* 单元编号, 单元局部自由度编号, 分量编号\n",
    "\n",
    "后面分量编号, 可以是一维, 二维, 三维张量\n",
    "\n",
    "如果每个单元的基函数值一样:\n",
    "标量基函数 phi, 一维数组, phi[i], 第i 个局部基函数的值\n",
    "向量基函数 phi, 二维数组, phi[i, j], 第 i 个基函数的第 j 个分量\n",
    "\n",
    "如果每个单元的基函数不一样:\n",
    "phi[i, j]\n",
    "phi[i, j, k]\n",
    "\n",
    "基函数梯度 gradphi, 三维数组, gradphi[i, j, k],  第 i 个单元的第 j 个基函数关于第 k 个分量的导数值"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 网格模块\n",
    "\n",
    "网格模块主要包含:\n",
    "\n",
    "* IntervalMesh\n",
    "* TriangleMesh\n",
    "* QuadrangleMesh\n",
    "* TetrahedronMesh\n",
    "* HexahedronMesh\n",
    "* PolygonMesh\n",
    "* PolyhedronMesh\n",
    "* StructureQuadMesh\n",
    "* StructureHexMesh\n",
    "* BlockStructureQuadMesh\n",
    "* BlockStructureHexMesh\n",
    "* QuadtreeMesh\n",
    "* OctreeMesh\n",
    "* TritreeMesh\n",
    "* BitreeMesh\n",
    "\n",
    "* point: vertex coordinates \n",
    "* edge\n",
    "* face\n",
    "* cell \n",
    "* cell2point\n",
    "* cell2edge\n",
    "* edge2cell\n",
    "* point2cell\n",
    "* cell2face\n",
    "* face2cell"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
